Application development tools are frequently provided to program developers to make the job of programming simpler and more efficient. A technique that has been developed to assist novice and intermediate programmers using such tools, such as VisualAge for Smalltalk from International Business Machines Corporation ("IBM") and PowerBuilder from Sybase Inc., has been the concept of visual programming from parts. ("VisualAge" is a registered trademark of IBM.) In addition to the underlying programming language, such tools provide a selection of pre-built software parts or components presented to a software developer via an icon in a graphical user interface together with an open work space. By simply selecting one of the icons and dragging it into the work space, the developer in effect programs an application that the developer is creating to include the code for the function of the part or component which the icon represents.
Programming from parts is especially effective for developing graphical user interfaces for software applications being created, but is also employed for adding many types of functions to applications such as communication, database access, multimedia, etc. With the advent of the WorldWide Web, another natural extension is for use with the Java language and the creation of home pages for businesses. ("Java" is a trademark of Sun Microsystems, Inc.)
Java layout managers have been created to facilitate the visual layout of parts for the creation of Java applications. Several common types exist: 1) a flow type; 2) a border type; 3) a grid type; and 4) a grid bag type.
The flow type layout manager adds components in a top-to-bottom, left-to-right pattern. Parts/components are added until the current row is full, then a new row is started directly therebelow.
The border type layout manager adds components in one of five positions: north, south, east, west or center. The borders (north, south, east and west) are laid out first, and the remaining available space is occupied by the center.
The grid type layout manager adds components to a cell as specified by a row and column. The number of rows and columns must first be specified. Then, components are added similarly to the flow type method.
The grid bag type layout manager is similar to the grid type except that a component may fit into more than one cell. The grid bag can be thought of as a piece of graph paper on which each component is positioned to occupy one or more of the little boxes on the paper.
An advantage to the use of layout managers is that they create displays that are platform independent and can compensate for differences in fonts, display resolutions, and other platform differences. However, none of the known tools provide a visual technique for adding components to layout managers. As a result, use of layout managers is restricted to the manual, difficult process of not only writing code, but writing code that involves using layout constraints, which is a tedious, difficult task. In short, Java layout managers are accessible only to programmers, not to the general public. Thus, there is a need for a method and system for drop guides for a visual layout in Java layout managers.